/**
 * 项目名：	Rumba Plan
 * 
 * 版权所有(C)，上海海鼎信息工程股份有限公司，2008，所有权利保留。
 * 
 * 文件名：	IPathSearcher.java
 * 模块说明：	
 * 修改历史：
 * Jan 3, 2008 - zhangyanbo - 创建。
 */
package com.hd123.rumba.upgrade.impl;

import java.util.List;

/**
 * 最短路径搜索接口。
 * 
 * @author zhangyanbo
 * 
 */
public interface IPathSearcher {

  /**
   * 增加一条边。
   * 
   * @param edgeStartId
   *          边的起始顶点id
   * @param edgeEndId
   *          边的终止顶点id
   * @throws Exception
   */
  public void addEdge(String edgeStartId, String edgeEndId) throws Exception;

  /**
   * 搜索最短路径。<br>
   * 如果没有找到最短路径，则返回null。
   * 
   * @param startId
   *          起始顶点id
   * @param endId
   *          终止顶点id
   * @return 最短路径经过的顶点id。
   * @throws Exception
   */
  public List<String> search(String startId, String endId) throws Exception;
}
